﻿//using System;
//using System.Collections.Generic;
//using System.Linq;
//using System.Text;
//using Granite.Modeling;
//using Granite.DataAnnotations;

//namespace Rifts.Models.Characters
//{
//	public class Weapon : ChangeTrackingModelBase
//	{
//		public String Name
//		{
//			get { return Get<String>("Name"); }
//			set { Set(value, "Name"); }
//		}

//		public WeaponType WeaponType
//		{
//			get { return Get<WeaponType>("WeaponType"); }
//			set { Set(value, "WeaponType"); }
//		}

//		/// <summary>
//		/// This is used for calculating strike/parry bonuses from the WP skills
//		/// </summary>
//		public string WeaponClass
//		{
//			get { return Get<string>("WeaponClass"); }
//			set { Set(value, "WeaponClass"); }
//		}

//		#region Damage
//		public string DamageBase
//		{
//			get { return Get<String>("DamageBase"); }
//			set { Set(value, "DamageBase"); }
//		}

//		public string DamageFromPS
//		{
//			get { return Get<String>("DamageFromPS"); }
//			set { Set(value, "DamageFromPS"); }
//		}

//		/// <summary>
//		/// This can be MD, SD, or HP
//		/// </summary>
//		public DamageType DamageType
//		{
//			get { return Get<DamageType>("DamageType"); }
//			set { Set(value, "DamageType"); }
//		}

//		/// <summary>
//		/// This includes special damage types like Fire, Cold, Electricity
//		/// </summary>
//		public string DamageClass
//		{
//			get { return Get<String>("DamageClass"); }
//			set { Set(value, "DamageClass"); }
//		}


//		[CalculatedField("DamageBase,DamageFromPS,DamageClass")]
//		public string Damage
//		{
//			get
//			{
//				var result = DamageBase;

//				if (DamageType == DamageType.SD && WeaponType == WeaponType.Melee)
//					result += DamageFromPS;

//				result += " " + DamageType;

//				if (!string.IsNullOrEmpty(DamageClass))
//					result += " [" + DamageClass + "]";

//				return result;
//			}
//		}

//		#endregion


//		public string Range
//		{
//			get { return Get<String>("Range"); }
//			set { Set(value, "Range"); }
//		}

//		public string Ammo
//		{
//			get { return Get<String>("Ammo"); }
//			set { Set(value, "Ammo"); }
//		}

//						
//	}
//}